home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
wildcat
/
chksec20.zip
/
CHECKSEC.DOC
next >
Wrap
Text File
|
1992-04-14
|
6KB
|
141 lines
This program compliments of: ╓┴╖ ╓┴╖
/ ║ ║ ║ ║ \
╤╕ ╤╕ ╕ ╤╕╤╕╒╕ ┌─┬║┬║┬─┬─┬─┬─┬─┬║┬║┬─┐
││ ││ │ │││││ ▀▀▀▀║▀║▀▀▀▀▀▀▀▀▀▀▀║▀║▀▀▀▀
││ ╤╕ ╒╕ ╕ ╒ ╞╡ ╤╕ ╕ ╒╡ ╒╤ ╤╕ ╞╡╞╡╘╕ ╨ ╨ ╨ ╨
││ │ ╒╡ │││ ││ │ │ ││ ││ ╞╛ ││││ │ FIDO 1:369/2
╧╛ ╧ ╘╧ ╘╧╛ ╧╛ ╧ ╘ ╘╧ ╘╡ ╘╛ ╧╛╧╛╘╛ EchoNet 50:5305/2
│ OurNet 65:613/2
Fort Lauderdale, FL ╘╛ WDNet 145.00
(305) 523-1717 *HST/DS*
CheckSec v2.0
(c) 1992 by Rich Waugh
PROBLEM: I run an adult game to which I do not wish to allow minor user
access. Unfortunately, I have some minor users who have higher access than
some adults. All my security levels, from new user to visiting SysOp to Paid
Access are set up in parallel: one with adult access, the other without. The
way I have it set up, non-adult access always ends in a 0, while adult access
ends with a 5. For example, NEWUSER has menu access level 10, while NEWUSER-X
(adult at the same level) has an access level of 15. Notice that a simple "if
larger than" security level check will not work for me. I'd like to give
access to level 25, but not to level 30. That is not possible with WildCat!,
so I wrote this little utility.
CheckSec will check the user's AGE or SECURITY LEVEL and compare it to levels
you have chosen and entered in a configuration file. If it finds a match, the
program terminates normally with an errorlevel 0. If it does not find a
match, it exits with errorlevel 1. You can trap this errorlevel in a batch
file and determine what action to take depending on the result found.
CheckSec includes all the good CatPatch stuff, like chat, drop to DOS, timer,
monitor detection, customized F Keys, user info, etc; it even supports locked
DTE (up to 19200). CheckSec is compiled as a stand-alone program. You do not
need Brun45 in your path.
╔════════════════════════════════════════════════════════════════╗
║ NOTE! The security levels are passed to Door.Sys by the *Menu ║
║ Access Level*, NOT the NAME of the security level, and the ║
║ Menu Access Level is what CheckSec checks. ║
╚════════════════════════════════════════════════════════════════╝
Here's what's required: You must make a file named CheckSec.Cfg in the
directory where you will run the program.
--------------------------------------
SETUP #1 (Checking Security)
EXAMPLE CheckSec.Cfg
DrawBridge BBS <── The name of your BBS
Rich <── SysOp's first name
Waugh <── SysOp's last name
C:\Wc30\Wcwork\Node1\Door.Sys <── Path to Door.Sys
19200 <── Locked DTE rate (or NO)
SECURITY <── If you want to check by Security Level
25 ─┐
35 │ The various MENU ACCESS LEVELS you want
45 │ to allow access to the door. You may enter
55 │ up to 100 levels, one per line.
65 ─┘
--------------------------------------
Alternatively, if you don't care about Security Level access, you can
configure CheckSec to check the user's age instead.
SETUP #2 (Checking User's Age)
EXAMPLE CheckSec.Cfg
DrawBridge BBS <── The name of your BBS
Rich <── SysOp's first name
Waugh <── SysOp's last name
C:\Wc30\Wcwork\Node1\Door.Sys <── Path to Door.Sys
NO <── Locked DTE rate (or NO)
AGE=21 <── The minimum age you want to give access to
--------------------------------------
Whichever setup you choose, you must run CheckSec.Exe in your door batch
file, prior to running the door itself, and trap the errorlevel result.
EXAMPLE DOORX.BAT
@Echo Off
Cd \Doors\Fantasy
CheckSec CheckSec.Cfg
If ErrorLevel 1 Goto END
Fantasy C:\Wc30\Wcwork\Node1\ /BDrawBridge /D /ORich_Waugh /P50 /M1
:END
Notice that if CheckSec exits with errorlevel 1, we skip the door and simply
return him back to the board. That's all there is to it.
--------------------------------------
I, for one, am sick and tired of people who solicit money for the dumb little
doors/utilities we all find so indespensible, so this one's a freebie. It is
fully functional and contains no time bombs. If you find it handy, give the
DrawBridge a call and thank me. If you don't find it useful, I'll cheerfully
refund double your money!
Rich Waugh
--------------------------------------
Acknowledgements: CheckSec was written in Quick Basic 4.5 using Jim Brewer's
CatPatch routines modified for WildCat! 3.x; with ASM
routine for errorlevel exit by Dave Cleary.
--------------------------------------
History:
Version 2.0: Another bug fix. The Catpatch routines for setting baud rate were
incorrect if the cfg file did not specify a locked DTE. It should
work correctly now for those who have it set to "NO".
Versions 1.8 - 1.9: Mostly code clean-ups, some cosmetic changes. Not released.
Version 1.7: Found and squished a bug in the modification of CatPatch which was
causing dropped carrier - only if the user failed the test - maybe
I should have left that in! <grin>.
Versions 1.4 - 1.6: Mostly code clean-ups, some cosmetic changes.
Version 1.3: Added the comm routines so the remote user can see what's going
on!
Version 1.2: Added the age-checking routine.
Version 1.1: Cleaned up the code and added some color to the video output.
Version 1.0: Original release.